package com.bsoft.gol.editor.editor.request;

import java.io.Serializable;
import java.util.List;

/**
 * @Author:FangZhiyi
 * @Description 查询患者记录列表入参
 * @Params
 * @Return
 * @Data Created in 2020/10/28 10:02
 * @Moddified By:
 */
public class ListQueryHisReq implements Serializable {
    //医院ID，医院系统身份标识organizationId
    private String organizationId;
    //查询类型，参数设置，1表示按患者患者标识集合查询；2表示按证件集合查询；3表示按诊疗卡集合查询；4表示查询某一个手术；默认是1
    private String queryType;
    //诊疗卡集合，包含：诊疗卡类型和诊疗卡号码
    private List<PatientMedicalCardInformation> patientMedicalCardNumberList;
    //患者标识集合，包括患者编号
    private List<PatientIdHis> patientIdList;
    //证件集合，包含：证件类型和证件号码
    private List<PatientIdentityCardHis> patientIdentityCardList;
    //手术Id（唯一识别号）
    private String operationId;
    //1:检验  2:检查  3:处置(治疗)
    private Integer billCategoryCode;
    private String beginDate;
    private String endDate;
    private Integer pageNo=1;
    private Integer pageSize=20;

    public String getBeginDate() {
        return beginDate;
    }

    public void setBeginDate(String beginDate) {
        this.beginDate = beginDate;
    }

    public String getEndDate() {
        return endDate;
    }

    public void setEndDate(String endDate) {
        this.endDate = endDate;
    }

    public Integer getPageNo() {
        return pageNo;
    }

    public void setPageNo(Integer pageNo) {
        this.pageNo = pageNo;
    }

    public Integer getPageSize() {
        return pageSize;
    }

    public void setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
    }

    public String getOrganizationId() {
        return organizationId;
    }

    public void setOrganizationId(String organizationId) {
        this.organizationId = organizationId;
    }

    public String getQueryType() {
        return queryType;
    }

    public void setQueryType(String queryType) {
        this.queryType = queryType;
    }

    public List<PatientMedicalCardInformation> getPatientMedicalCardNumberList() {
        return patientMedicalCardNumberList;
    }

    public void setPatientMedicalCardNumberList(List<PatientMedicalCardInformation> patientMedicalCardNumberList) {
        this.patientMedicalCardNumberList = patientMedicalCardNumberList;
    }

    public List<PatientIdHis> getPatientIdList() {
        return patientIdList;
    }

    public void setPatientIdList(List<PatientIdHis> patientIdList) {
        this.patientIdList = patientIdList;
    }

    public List<PatientIdentityCardHis> getPatientIdentityCardList() {
        return patientIdentityCardList;
    }

    public void setPatientIdentityCardList(List<PatientIdentityCardHis> patientIdentityCardList) {
        this.patientIdentityCardList = patientIdentityCardList;
    }

    public String getOperationId() {
        return operationId;
    }

    public void setOperationId(String operationId) {
        this.operationId = operationId;
    }

    public Integer getBillCategoryCode() {
        return billCategoryCode;
    }

    public void setBillCategoryCode(Integer billCategoryCode) {
        this.billCategoryCode = billCategoryCode;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("{");
        sb.append("\"organizationId\":\"")
                .append(organizationId).append('\"');
        sb.append(",\"queryType\":\"")
                .append(queryType).append('\"');
        sb.append(",\"patientMedicalCardNumberList\":")
                .append(patientMedicalCardNumberList);
        sb.append(",\"patientIdList\":")
                .append(patientIdList);
        sb.append(",\"patientIdentityCardList\":")
                .append(patientIdentityCardList);
        sb.append(",\"operationId\":\"")
                .append(operationId).append('\"');
        sb.append(",\"billCategoryCode\":")
                .append(billCategoryCode);
        sb.append(",\"beginDate\":\"")
                .append(beginDate).append('\"');
        sb.append(",\"endDate\":\"")
                .append(endDate).append('\"');
        sb.append(",\"pageNo\":")
                .append(pageNo);
        sb.append(",\"pageSize\":")
                .append(pageSize);
        sb.append('}');
        return sb.toString();
    }
}
